#ifndef CHARTDIALOG_H
#define CHARTDIALOG_H

#include <QDialog>
#include "sensortype.h"
#include "qss.h"
#include <QTimer>
#include <QDateTime>
#include "qcustomplot.h"
#include "node.h"
#include <QtWidgets>
#include <QFile>
#include "exportdatathread.h"

namespace Ui {
class ChartDialog;
}

class ChartDialog : public QDialog
{
    Q_OBJECT

public:
    explicit ChartDialog(SensorType type,QWidget *parent = 0);
    ~ChartDialog();
    node currentNode[12]; // 当前的传感器数据

private:
    Ui::ChartDialog *ui;
    QTimer* timer;

    QProgressDialog *dialog;

    SensorType type;

    // 绘图相关参数
    double lastPointKey;
    double lastFpsKey;
    int frameCount;
    QTime timeStart;

    // 根据不同的传感器类型设置标题
    void initialType(SensorType type);
    void initialWidgets(); // 初始化组件状态
    void setupRealtimeData(QCustomPlot *customPlot);

private slots:
    void realtimeDataSlot(); // 更新折线图的槽函数
    void btnClickedSlot(); // 导出按钮点击的槽函数
    void progressSlot(int); // 导出进度槽函数
};

#endif // CHARTDIALOG_H
